A software technique called a virtual machine monitor (hereinafter called a VMM) such as a Hypervisor is used to run multiple virtual machines (hereinafter called a VM) on one computer
The VMM has a function to allocate a resource to each VM, such as that 1 GB memory is allocated to a VM 1, and 2 GB memory is allocated to a VM 2. Further, the VMM can dynamically (i.e. without stopping the VM) change a resource to be allocated to each VM.
A resource needed by a VM can be allocated to the VM by using this function of VMM. The resource needed by a VM fluctuates depending on time. A computer's resource can be effectively used by allocating the resource in accordance with the fluctuation of the resource needed by a VM. This technique is called a dynamic resource allocation technique.
In the dynamic resource allocation technique, it is important to assure a resource needed by a VM. Resource assurance means that more amount of a resource is allocated than the amount needed by a VM. If the resource is not assured, operation of a VM might be disturbed.